<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <script src="../node_modules/vue/dist/vue.global.js"></script>

    <style>
        /* 属性选择器 */
        [v-cloak] {
            display: none;
        }
    </style>
</head>

<body>
    <div id="app" v-cloak>
        <p v-cloak>{{msg}}</p>
        <p>{{msg}}</p>
    </div>
</body>

</html>
<script>

    // vue中的指令
    // vue 指令语法: 就相当于给标签添加自定义的属性,该属性是以v-开头的属性,执行对应的指令的功能

    // v-cloak 指令: 就是绑定在那个标签上,那么该标签就会当插值表达式的语法执行的时候,该指令才会消失
    // 昙花一现的属性,结合style 的属性选择器优化用户体验
    // 注意: 如果让所有的标签中的插值表达式都有v-cloak. 直接将该指令加载根标签上就ok啦
    setTimeout(() => {
        const app = Vue.createApp({
            data() {
                return {
                    msg: 'hello world'
                }
            },
            methods: {

            }
        }).mount('#app')
    }, 2000)


</script>